<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>Map3D - ECHARTS-GL</title>
    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes"> <!-- Fullscreen Landscape on iOS -->
    <link rel="stylesheet" href="./common.css">
</head>
<body>
<div id="main"></div>
<script src="../node_modules/echarts/dist/echarts.js"></script>
<script src="../dist/echarts-gl.js"></script>
<script src='../node_modules/maptalks/dist/maptalks.js'></script>
<script src="lib/jquery.min.js"></script>
<script src="js/commonUI.js"></script>
<script>
    var chart = echarts.init(document.getElementById('main'));

    $.getJSON('./data/population.json', function (data) {

        data = data.filter(function (dataItem) {
            return dataItem[2] > 0;
        }).map(function (dataItem) {
            return [dataItem[0], dataItem[1], dataItem[2]];
        });

        chart.setOption({
            visualMap: {
                show: false,
                max: 1000,
                calculable: true,
                realtime: false,
                inRange: {
                    color: ['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf', '#fee090', '#fdae61', '#f46d43', '#d73027', '#a50026']
                },
                outOfRange: {
                    colorAlpha: 0
                }
            },
            maptalks3D: {
                center: [104.114129, 37.550339],
                zoom: 3,
                pitch: 50,
                bearing: -10,
                boxHeight: 50,
                // altitudeScale: 1e2,
                postEffect: {
                    enable: true,
                    screenSpaceAmbientOcclusion: {
                        enable: true,
                        radius: 2
                    }
                },
                light: {
                    main: {
                        intensity: 2,
                        shadow: true,
                        shadowQuality: 'high'
                    },
                    ambient: {
                        intensity: 0.
                    },
                    ambientCubemap: {
                        texture: 'asset/canyon.hdr',
                        exposure: 2,
                        diffuseIntensity: 0.5
                    }
                }
            },
            series: [{
                type: 'bar3D',
                coordinateSystem: 'maptalks3D',
                shading: 'lambert',
                minHeight: 0.1,
                barSize: 0.1,
                data: data,
                silent: true,
                animationEasingUpdate: 2000
            }]
        });
    });

    window.addEventListener('resize', function () {
        chart.resize();
    });

</script>
</body>
</html>
